import axios from 'axios'
import { Toast } from 'antd-mobile'
import {message} from 'antd'

const instance = axios.create({
    baseURL: '/api',
    timeout: 1000,
});
// 添加请求拦截器
instance.interceptors.request.use(function (config) {
    // 在发送请求之前做些什么
    Toast.show({
        icon: 'loading',
        content: '加载中…',
    })

    let token = localStorage.getItem('token')
    config.headers.Authorization = `Bearer ${token}`
    return config;
}, function (error) {
    // 对请求错误做些什么
    return Promise.reject(error);
});

// 添加响应拦截器
instance.interceptors.response.use(function (response) {
    // 2xx 范围内的状态码都会触发该函数。
    // 对响应数据做点什么
    Toast.clear()
    return response;
}, function (error) {
    // 超出 2xx 范围的状态码都会触发该函数。
    // 对响应错误做点什么
    Toast.clear()

    if(error.response){
        const status=error.response.status
        if(status>=200&&status<300){
            message.success('请求成功')
        }
        else if(status>=300&&status<400){
            message.error('请求重定向')
        }
        else if(status>=400&&status<500){
            message.error('客户端请求失败')
        }
        else if(status>=500){
            message.error('服务器错误')
        }
        else{
            message.error('未知错误')
        }
    }

    return Promise.reject(error);
});
export default instance